Mobile configurable conveyor component

ABSTRACT

A mobile robotic device with a conveyor that is configured to link up with another conveyor of a second mobile robotic device is described. In this manner, the mobile robotic devices may provide integrated, flexible conveyors and the ability to link conveyors to make an aggregate conveyor of any shape or size. Moreover, the mobile robotic device is configured to receive a conveyor from a storage unit and move the conveyor to another point within a physical space. The mobile robotic device also has the capability to rotate the conveyor, when docked, about the axis of the mobile robotic device (e.g., for sorting and other operations).

BACKGROUND

Existing inventory systems, such as those in mail-order warehouses,supply chain distribution centers, airport luggage systems, andcustom-order manufacturing facilities, etc., can encounter challenges inresponding to requests for inventory items. As inventory systems grow,the challenges of completing a number of packing, storing, and otherinventory-related tasks becomes increasingly difficult. In inventorysystems tasked with responding to large numbers of diverse inventoryrequests, inefficient utilization of system resources, including space,equipment, and manpower, can result in lower throughput, longer responsetimes, an increasing backlog of unfinished tasks, and overall lowersystem performance. Additionally, expanding or reducing the size orcapabilities of many inventory systems may require non-trivialmodifications to existing infrastructure and equipment. Consequently,the cost of incremental changes to capacity or functionality may beprohibitively expensive and, thus, limit the ability of the system toaccommodate changes in system throughput.

BRIEF DESCRIPTION OF THE DRAWINGS

Various embodiments in accordance with the present disclosure will bedescribed with reference to the drawings, in which:

FIGS. 1A and 1B illustrate in detail an example mobile robotic devicethat may be utilized in an inventory system in accordance with someembodiments;

FIG. 2 illustrates example components of a management module inaccordance with some embodiments;

FIG. 3 illustrates an example of an inventory system in accordance withsome embodiments;

FIG. 4 illustrates an example of the inventory system in accordance withsome embodiments;

FIG. 5 illustrates an example of the inventory system in accordance withsome embodiments;

FIGS. 6A and 6B illustrate examples of the inventory system inaccordance with some embodiments;

FIGS. 7A and 7B illustrate examples of the inventory system inaccordance with some embodiments;

FIG. 8 illustrates an example of the inventory system in accordance withsome embodiments; and

FIG. 9 illustrates an example of the inventory system in accordance withsome embodiments.

DETAILED DESCRIPTION

Systems and apparatuses in accordance with various embodiments of thedisclosure may overcome one or more deficiencies experienced in existingapproaches with inventory storage and fulfillment of orders. Morespecifically, embodiments described herein provide implementations foran inventory system that includes one or more mobile robotic devicescapable of moving any of one or more inventory holders, items, objects,etc., between locations within a physical space associated with theinventory system.

In an embodiment, an inventory system may provide one or more mobilerobotic devices, and one or more inventory holders. Mobile roboticdevices may be capable of transporting inventory holders between pointswithin a workspace (e.g., a warehouse, etc.) in response to commands.The mobile robotic devices are independent, self-powered devicesconfigured to move throughout the workspace. Each inventory holder maystore one or more types of inventory items. In an embodiment, inventoryholders include multiple storage bins with each storage bin capable ofholding one or more types of inventory items. Inventory holders arecapable of being carried, rolled, and/or otherwise moved by mobilerobotic devices in an embodiment.

In a physical space for inventory storage, a conveyor system may bepresent in order to transport items or objects throughout the space.Such a conveyor system, however, may include several disadvantages suchas inflexibility in arrangement or configuration within the physicalspace, the speed and efficiency with which the conveyor transports goodsand materials, and overall cost of such a fixed conveyor system.Moreover, an inflexible conveyor system can present distinct challengesin integrating with mobile robotic devices to provide an efficientinventory system, which can be addressed by embodiments describedherein.

As described further herein, mobile robotic devices may be configuredwith conveyor components to address the aforementioned deficiencies ofan existing conveyer system. Such conveyor components may be of varioussizes to facilitate different configurations of conveyer segments thattraverse various distances of the workspace to reach respective portionsof the workspace. Each mobile robotic device is configured to removablyattach or dock to a frame of a conveyor component so that the mobilerobotic device can transport such a conveyor component throughout theworkspace.

Each conveyor component may be of any appropriate length and configuredto have connector elements to form a connection with another conveyorcomponent. In this fashion, multiple conveyor components may form alonger conveyor segment to cover a distance throughout the workspace.Such longer conveyor segments may be of any appropriate configuration inorder to facilitate moving inventory items or objects over variousdistances to one or more locations in or outside the workspace. Suchlocations may include a location where a vehicle may load/unloadinventory items or objects, a location where inventory items are stored,a location where inventory items may be further handled by a worker,etc. Multiple mobile robotic devices that form a respective longerconveyor segment can be placed accordingly in the workspace with othermobile robotic devices that form another longer conveyor segment so thatmultiple conveyor segments are placed adjacent or close to one another.

Additionally, configurations of various conveyor segments can enable oneor more mobile robotic devices to perform sortation of inventory items.As described further herein, each mobile robotic device may include arotating head that enables the mobile robotic device to rotate anattached conveyor component along an axis relative to the mobile roboticdevice. As inventory items travel along one or more conveyor segments, agiven mobile robotic device can be controlled or instructed to rotateits attached conveyor component using its rotating head and, as aresult, enabling sortation of the inventory item by changing thedirection in which the inventory items are moving in the workspace. Thiscan allow the mobile robotic device to align its conveyor attachment toanother conveyor attached on another mobile robotic device to performsortation of inventory items.

As described further herein, management of the inventory items in theinventory system may be provided by a centralized management module,which may be loosely analogously compared to an air traffic controllerin an air traffic control system. Such a management module, among othercapabilities, provides instructions to the mobile robotic devices and/orthe conveyor attachments to enable certain tasks to be performed in theworkspace of the inventory system. Examples of such tasks may includeinstructing mobile robotic devices to dock/attach to a conveyorattachment, instructing mobile robotic devices to move their conveyorattachments to various positions in the workspace, instructing mobilerobotic devices to connect their conveyor attachments with otherconveyor attachments attached to other mobile robotic devices, etc.

FIGS. 1A and 1B illustrate the components of a mobile robotic device100. In particular, FIG. 1A illustrates a side view of an example mobilerobotic device 100, and FIG. 1B illustrates a front view of the examplemobile robotic device 100. As shown, the mobile robotic device 100includes a rotating head 110, a drive module 120, and a control module170. Additionally, the mobile robotic device 100 may include one or moresensors configured to detect or determine the location of the mobilerobotic device 100. In the illustrated embodiment, the mobile roboticdevice 100 includes a position sensor 140, an obstacle sensor 160, andan identification signal transmitter 162. It is appreciated that othertypes of sensors may be included in the mobile robotic device 100 andstill be within the scope of the disclosure.

The rotating head 110, in at least one embodiment of mobile roboticdevice 100, couples the mobile robotic device 100 to a frame 174 of aconveyor 175. In at least an embodiment, the rotating head 110 can beintegrally attached to the frame 174 of the conveyor 175, or can beremovably attached/docked to the frame 174 of the conveyor 175. Whenattached, the rotating head 110 can lift and/or rotate the conveyor 175relative to the mobile robotic device 100. Also, the mobile roboticdevice 100 can transport the conveyor 175 throughout a workspace of aninventory system as described further herein. The conveyor 175 mayinclude actuators or motors as described further below.

Rotating head 110 may additionally allow mobile robotic device 100 tomaneuver the conveyor 175, such as by lifting the frame 174 of theconveyor 175, rotating the frame 174 of the conveyor 175, and/or movingthe frame 174 of the conveyor 175 in any other appropriate manner. Toenable moving the frame of the conveyor 175, the rotating head 110 mayinclude one or more components such as linear/rotating actuators, motors(e.g., electric, pneumatic, hydraulic, etc.), shafts, gears, pulleys,wheels, racks and pinions, etc. In one embodiment, an actuator (notshown) is capable of adjusting the position or orientation of therotating head 110 in one or more suitable ways to facilitate docking tothe frame 174. The actuator of the rotating head 110 may include anyappropriate components for moving the rotating head 110 or otherwiseadjusting the position or orientation of the rotating head 110. In anexample, a motorized shaft (not shown) is connected to the actuator andconfigured to attach to the center of the rotating head 110. Themotorized shaft is operable to lift the rotating head 110 as appropriatefor docking with the frame 174 of the conveyor 175, and also operable torotate the rotating head 110 along a vertical axis through a center ofthe rotating head 110 of the mobile robotic device 100. The rotatinghead 110 may also include any appropriate combination of components,such as ribs, spikes, flanges, and/or corrugations, to furtherfacilitate docking or attaching to the frame 174 of the conveyor 175.For example, the rotating head 110 may include supporting arms 111 a and111 b that support the frame 174 of the conveyor 175 and enable therotating head 110 to be removably docked or attached to the frame 174 ofthe conveyor 175.

The conveyor 175, as illustrated, may include a conveyor belt 177, aconveyor motor 176, and one or more conveyor cylinders 178 and 179 thatare configured to enable the conveyor belt 177 to rotate in a particulardirection (e.g., by rotating around the cylinders). In the embodimentshown in FIG. 1A, the conveyor motor 176 may be coupled to the conveyorcylinder 178, and when activated, can rotate the conveyor cylinder 178in a clockwise or counter-clockwise direction. The rotational movementof the conveyor cylinder 178 causes the conveyor belt 177 to move in alikewise direction rotating around the conveyor cylinders in a cyclicmanner. The conveyor motor 176 may any type of motor including, forexample, a brushless motor, brushed motor, DC motor, AC motor, universalAC-DC motor, switched reluctance motor, fixed speed motor, inductionmotor, etc. The conveyor 175 may be any appropriate size or dimension.In an embodiment, the conveyor 175 may have a length of approximately 10feet long.

A power module 180 may supply power to the conveyor 175. In theembodiment illustrated in FIGS. 1A and 1B, the power module 180 mayinclude a conveyor controller 185 and an external power connector 190.The conveyor controller 185 may receive and/or transmit control signalsfrom another conveyor and/or a remote management module (as describedfurther herein). Among the types of control signals, a motoridentification signal that identifies the conveyor motor 176, commandsignals, and/or control signals may be transmitted and/or received bythe conveyor controller 185. The conveyor controller 185 may include anyappropriate hardware and/or software suitable to provide the describedfunctionality. In at least one embodiment, the conveyor controller 185includes a microprocessor programmed to provide the describedfunctionality.

Power may be transmitted, via at least one connector as describedfurther below, through the conveyor 175 to supply power to the conveyormotor 176 and/or other components of the conveyor 175. When multipleconveyors are connected to each other via such a connector, power and/orcontrol or other signals may be transferred from one conveyor to anotherconveyor via the connector. In an embodiment, the conveyor 175 mayinclude the external power connector 190 (e.g., included in the powermodule 180) that is capable of interfacing with an external powersource. In an example, this external power source could be a componentof a busway power distribution system, which refers to an electricaldistribution system consisting of bus bars in a protective enclosure,including straight lengths, fittings, devices, and accessories. Oneadvantage of a busway is the relative ease in which busway sections areconnected together to enable electrical power to be supplied to any areaof a physical space.

As mentioned above, the mobile robotic device 100 may include at leastone connector that facilitates coupling with other conveyors that may beprovided by other mobile robotic devices. Such a connector, asillustrated, may include a connector base 191 a and a protrudingconnector portion 192 a. The mobile robotic device 100, as furtherillustrated, may include a connector receptacle 193 a that has anopening which is configured to receive a protruding connector portion192 a of another conveyor (e.g., similar to the conveyor 175). Theprotruding connector portion 192 a may be adapted for engagement in theopening of the connector receptacle 193. In this manner, multiple mobilerobotic devices may link up, each providing a respective conveyorsection, and forming longer conveyors to facilitate more efficientand/or configurable transporting of inventory items in the workspace.When connected, the respective belts of the conveyors are fixed in acoplanar orientation in an embodiment. In an example, the connector maycomprise a type of interlocking connector such as a blind mate connectorthat provides a mating action that occurs via a sliding or snappingmovement when connecting with a connector receptacle, and hasself-aligning features which further allows a small misalignment ortolerance when mating with the receptacle (and still maintaining theconnection). As discussed above, the connector may transmit power toportions of the conveyor 175. Further, control or other signals may betransmitted to each individually identified motor (e.g., identified by amotor identification signal discussed above) over the power connectionprovided by the connector, which in an embodiment can minimize a numberof discrete connection points.

As further illustrated in FIG. 1B, the conveyor 175 may include a pairof connectors and a pair of connector receptacles. Opposite to theconnector corresponding to the connector base 191 a and the protrudingconnector portion 192 a, another connector with a connector base 191 band a protruding connector portion 192 b is provided. Similarly,opposite to the connector receptacle 193 a, a connector receptacle 193 bis provided. In comparison to providing a single connector or a singleconnector receptacle, by having a pair of connectors, the mobile roboticdevice may more securely connect to another similar mobile roboticdevice with corresponding pairs of connectors and/or connectorreceptacles. Moreover, it is appreciated that although the connectorsand connector receptacles are illustrated at different ends of theconveyor 175, in at least one embodiment, one or more connectors and/orconnector receptacles may be configured along the side(s) of theconveyor 175 to enable connecting with another conveyor to facilitateone or more “L” shaped turns in the aggregate conveyor formed by one ormore connected conveyor segments.

The drive module 120 propels the mobile robotic device 100 and, when themobile robotic device 100 and the conveyor 175 are docked, the conveyor175. The drive module 120 may represent any appropriate collection ofcomponents operable to propel the drive module 120. For example, in theillustrated embodiment, the drive module 120 includes a motorized axle122, a pair of motorized wheels 124, and a pair of stabilizing wheels126. In an example, one motorized wheel 124 is located at each end ofmotorized axle 122, and one stabilizing wheel 126 is positioned at eachforward and rearward end of the mobile robotic device 100.

The drive module 120 may be configured to move the mobile robotic device100 in any appropriate manner. For example, in the illustratedembodiment, the motorized wheels 124 are operable to rotate in a firstdirection to move the mobile robotic device 100 in a forward direction.The motorized wheels 124 are also operable to rotate in a seconddirection to move the mobile robotic device 100 in a backward direction.Further, the drive module 120 may also be configured to rotate themobile robotic device 100 by rotating the motorized wheels 124 indifferent directions from one another or by rotating the motorizedwheels 124 at different speeds from one another.

The position sensor 140 may comprise one or more sensors, detectors, orother components suitable for determining the location of the mobilerobotic device 100 in any appropriate manner. For example, the positionsensor 140 may include an imaging device or camera and suitable imageprocessing and/or video processing components (e.g., a DSP, ASIC, FPGA,etc.), to allow the position sensor 140 to detect objects or markingswithin the camera's field of view that may indicate a relative positionor location within the workspace and aids in navigation when movingwithin workspace. The control module 170 may store location informationthat the position sensor 140 updates as position sensor 140 detects theobjects or markings. In an embodiment, the workspace associated with theinventory system includes a number of fiducial marks that mark points ona two-dimensional grid that covers all or a portion of the workspace.The position sensor 140 may therefore detect such fiducial marks and thecontrol module 170 may store location information for the detectedfiducial marks. A fiducial mark may refer to an object placed in thefield of view of an imaging system (e.g., a camera used by the mobilerobotic device) which appears in the image produced, for use as a pointof reference or a measure (e.g., for determining a location within theworkspace).

The obstacle sensor 160 represents one or more sensors capable ofdetecting objects located in one or more different directions in whichmobile robotic device 100 is capable of moving. The obstacle sensor 160may utilize any appropriate components and techniques, includingoptical, radar, sonar, pressure-sensing and/or other types of detectiondevices appropriate to detect objects located in the direction of travelof mobile robotic device 100. In at least one embodiment, the obstaclesensor may transmit information describing objects it detects to thecontrol module 170 to be used by the control module 170 to identifyobstacles and to take appropriate remedial actions to prevent the mobilerobotic device 100 from colliding with obstacles and/or other objects.

The obstacle sensor 160 may also detect signals transmitted by othermobile robotic devices 100 operating in the vicinity of the illustratedmobile robotic device 100. For example, in at least one embodiment of aninventory system, one or more mobile robotic devices 100 may include anidentification signal transmitter 162 that transmits an identificationsignal. The identification signal indicates to other mobile roboticdevices 100 that the object transmitting the identification signal is arespective mobile robotic device. The identification signal transmitter162 may be capable of transmitting infrared, ultraviolet, audio, visiblelight, radio, and/or other suitable signals that indicate to recipientsthat the transmitting device is a mobile robotic device 100.

Additionally, the obstacle sensor 160 may also be capable of detectingstate information transmitted by other mobile robotic devices 100. Forexample, in at least one embodiment, the identification signaltransmitter 162 may be capable of including state information relatingto the mobile robotic device 100 in the transmitted identificationsignal. This state information may include, but is not limited to, theposition, velocity, direction, and the braking capabilities of thetransmitting mobile robotic device 100. In at least one embodiment, themobile robotic device 100 may use the state information transmitted byother mobile robotic devices to avoid collisions when operating in closeproximity with those other mobile robotic devices.

The control module 170 monitors and/or controls operation of the drivemodule 120 and the rotating head 110. The control module 170 may alsoreceive information from sensors such as position sensor 140 and adjustthe operation of drive module 120 and/or other components of the mobilerobotic device 100 based on this information. In some embodiments, themobile robotic device 100 may be configured to communicate with a remotemanagement device of the inventory system, and the control module 170may receive commands transmitted to the mobile robotic device 100 andcommunicate information back to the remote management device utilizingcommunication components of the mobile robotic device. The controlmodule 170 may include any appropriate hardware and/or software suitableto provide the described functionality. In at least one embodiment, thecontrol module 170 includes a microprocessor programmed to provide thedescribed functionality. Additionally, the control module 170 mayinclude all or portions of the drive module 120, the position sensor140, and/or share components with any of these components of the mobilerobotic device 100.

The control module 170 may communicate with the conveyor controller 185as described before in order to send commands and control the operationof the conveyor 175. In another example, the control module 170 mayinstead communicate with the aforementioned remote management device ofthe inventory system to request operations for the conveyor 175 to beperformed. Such requested operations may include powering on or off theconveyor 175, activating or deactivating the conveyor motor 176, and/orgenerally controlling various components of the conveyor 175 asappropriate.

Moreover, in at least one embodiment, the control module 170 may includehardware and software located in components that are physically distinctfrom the device that houses drive module 120, and/or the othercomponents of the mobile robotic device 100 described above. Forexample, in at least one embodiment, each mobile robotic deviceoperating in inventory system may be associated with a software process(referred to here as a “mobile agent”) operating on a server that is incommunication with the device that houses drive module 120, and otherappropriate components of the mobile robotic device 100. This mobileagent may be responsible for requesting and receiving tasks, requestingand receiving routes, transmitting state information associated with themobile robotic device 100, and/or otherwise interacting with remotemanagement module 215 and other components of inventory system on behalfof the device that physically houses drive module 120, and the otherappropriate components of the mobile robotic device 100. For thepurposes of the description herein, the term “mobile robotic device”includes software and/or hardware, such as agent processes, thatprovides the described functionality on behalf of the mobile roboticdevice 100 but that may be located in physically distinct devices fromthe drive module 120, and/or the other components of the mobile roboticdevice 100 described above.

FIG. 2 illustrates example components 200 of a management module 215 inaccordance with some embodiments. As shown, the example embodimentincludes a resource scheduling module 292, a route planning module 294,a segment reservation module 296, a conveyor control module 280, acommunication interface module 298, a processor 290, and a memory 291.The management module 215 may represent a single component, multiplecomponents located at a central location within the inventory system, ormultiple components distributed throughout the inventory system. Forexample, management module 215 may represent components of one or moremobile robotic devices that are capable of communicating informationbetween the mobile robotic devices and coordinating the movement of themobile robotic devices within the workspace. It is appreciated that themanagement module 215 may include any appropriate combination ofhardware and/or software suitable to provide the described functionalityherein.

The processor 290 is operable to execute instructions associated withthe functionality provided by management module 215. The processor 290may comprise one or more computers, dedicated microprocessors, or otherprocessing devices capable of communicating electronic information.Examples of the processor 290 include one or more application-specificintegrated circuits (ASICs), field-programmable gate arrays (FPGAs),digital signal processors (DSPs) and any other suitable processors.

The memory 291 stores processor instructions, inventory requests,reservation information, state information for the various components ofinventory system and/or any other appropriate values, parameters, orinformation utilized by management module 215 during operation. Thememory 291 may represent any collection and arrangement of volatile ornon-volatile, local or remote devices suitable for storing data.Examples of the memory 291 include, but are not limited to, randomaccess memory (RAM) devices, read only memory (ROM) devices, magneticstorage devices, optical storage devices, or any other suitable datastorage devices.

The resource scheduling module 292 processes received inventory requestsand generates one or more assigned tasks to be completed by thecomponents of inventory system. The resource scheduling module 292 mayalso select one or more appropriate components for completing theassigned tasks and, using the communication interface module 298,communicate the assigned tasks to the relevant components. Additionally,the resource scheduling module 292 may also be responsible forgenerating assigned tasks associated with various management operations,such as prompting mobile robotic devices to recharge batteries or havebatteries replaced, instructing inactive mobile robotic devices to parkin a location outside the anticipated traffic flow or a location nearthe anticipated site of future tasks, directing mobile robotic devicesselected for repair or maintenance to move towards a designatedmaintenance station, instructing mobile robotic devices to move to adestination location, instructing mobile robotic devices to retrieveconveyor attachments that may be stored in a storage location in theworkspace, instructing mobile robotic devices that include conveyorattachments to connect to other mobile robotic devices that also includeconveyor attachments so as to form one or more various conveyorsegments, instructing mobile robotic devices to operate their attachedconveyor attachments (e.g., powering on or off, moving the conveyor beltin a particular direction, adjusting the conveyor belt speed, stoppingthe conveyor belt, etc.), and/or instructing the mobile robotic devicesto perform tasks in connection with sortation, etc.

The route planning module 294 receives route requests from the mobilerobotic devices. These route requests identify one or more destinationsassociated with a task the requesting mobile robotic device isexecuting. In response to receiving a route request, the route planningmodule 294 generates a path to one or more destinations identified inthe route request. The route planning module 294 may implement anyappropriate algorithms utilizing any appropriate parameters, factors,and/or considerations to determine the appropriate path. Aftergenerating an appropriate path, the route planning module 294 transmitsa route response identifying the generated path to the requesting mobilerobotic device using communication interface module 298.

The segment reservation module 296 receives reservation requests frommobile robotic devices attempting to move along paths generated by routeplanning module 294. These reservation requests, in an example, requestthe use of a particular portion of workspace (referred to herein as a“segment”) to allow the requesting mobile robotic device 100 to avoidcollisions with other mobile robotic devices while moving across thereserved segment. In response to received reservation requests, thesegment reservation module 296 transmits a reservation response grantingor denying the reservation request to the requesting mobile roboticdevice 100 using the communication interface module 298.

The conveyor control module 280 transmits control and/or commands to themobile robotic device 100 for controlling and operating the conveyor175. For example, the mobile robotic device 100 (e.g., via the controlmodule 170) may transmit a request to power on the conveyor 175 andoperate the conveyor motor 176. In an embodiment, the conveyorcontroller 185 may receive corresponding commands from the conveyorcontrol module 280 and then process the received commands for performingcertain operations on the conveyor 175. Such commands, for example, mayinstruct a conveyor to turn on its motor in order to rotate a conveyorbelt in a particular direction, change the speed of the conveyorrotation, change direction of conveyor rotation, stop the conveyor,rotate the conveyor via rotating head, among others. When a conveyorconnects with another conveyor, a signal may be transmitted from aconveyor controller at a mobile robotic device to the conveyor controlmodule 280 notifying that the respective conveyor sections are nowcoupled together. In an example, the respective conveyors and theirassociated mobile robotic devices that are included as part of coupledconveyor sections may be tracked and controlled by the conveyor controlmodule 280.

Communication interface module 298 facilitates communication between themanagement module 215 and other components of inventory system,including reservation responses, reservation requests, route requests,route responses, task assignments and conveyor control signals. Thesereservation responses, reservation requests, route requests, routeresponses, task assignments and conveyor control signals may representcommunication of any form appropriate based on the capabilities of themanagement module 215 and may include any suitable information.Depending on the configuration of the management module 215,communication interface module 298 may be responsible for facilitatingeither or both of wired and wireless communication between themanagement module 215 and the various components of inventory system. Inat least one embodiment, the management module 215 may communicate usingcommunication protocols such as 802.11, Bluetooth, or Infrared DataAssociation (IrDA) standards, NFC, among other standards, etc.Furthermore, the management module 215 may, in at least one embodiment,represent a portion of the mobile robotic device 100 or other componentsof inventory system. In such embodiments, communication interface module298 may facilitate communication between management module 215 and otherparts of the same system component.

The resource scheduling module 292, the route planning module 294, thesegment reservation module 296, the conveyor control module 280, and thecommunication interface module 298 may each represent any appropriatehardware and/or software suitable to provide the describedfunctionality. In addition, as noted above, the management module 215may, in at least one embodiment, represent multiple different discretecomponents and any or all of the resource scheduling module 292, theroute planning module 294, the segment reservation module 296, theconveyor control module 280, and the communication interface module 298may represent components physically separate from the remaining elementsof the management module 215. Moreover, any two or more of the resourcescheduling module 292, the route planning module 294, the segmentreservation module 296, the conveyor control module 280, and thecommunication interface module 298 may share common components. Forexample, in at least one embodiment, the resource scheduling module 292,the route planning module 294, the segment reservation module 296, andthe conveyor control module 280 represent computer processes executingon the processor 290 and the communication interface module 298comprises a wireless transmitter, a wireless receiver, and a relatedcomputer process executing on the processor 290.

FIG. 3 illustrates an example 300 of an inventory system 310. Theinventory system 310 includes a management module 315, one or moremobile robotic devices including mobile robotic devices 320 a, 320 b and320 c, one or more inventory holders including inventory holders 330 aand 330 b, and one or more inventory stations including inventorystation 350 a, 350 b, 350 c, 350 d, 350 e, 350 f, 350 g, and 350 h. Inan example, the mobile robotic devices transport the inventory holders330 a and 330 b between points within a workspace 370 in response tocommands communicated by the management module 315. Each inventoryholder 330 a and 330 b stores one or more types of inventory items. Theinventory system 310 therefore is capable of moving inventory itemsbetween locations within the workspace 370 to facilitate the entry,processing, and/or removal of inventory items from inventory system 310and the completion of other tasks involving inventory items. Asillustrated in the example of FIG. 3, the mobile robotic devices 320 a,320 b and 320 c each include a respective conveyor, which may coincidewith the description of the conveyor 175 as described herein in FIGS. 1Aand 1B. The mobile robotic devices 320 a, 320 b and 320 c may utilizetheir respective conveyors to facilitate moving inventory items betweenlocations within the workspace 370.

The management module 315 assigns tasks to appropriate components of theinventory system 310 and coordinates operation of the various componentsin completing the tasks. These tasks may relate not only to the movementand processing of inventory items, but also to the management andmaintenance of the components of inventory system 310. For example,management module 315 may assign portions of the workspace 370 asparking spaces for mobile robotic devices 320, the scheduled recharge orreplacement of mobile robotic device batteries, the storage of inventoryholders 330, or any other operations associated with the functionalitysupported by inventory system 310 and its various components. Managementmodule 315 may select components of inventory system 310 to performthese tasks and communicate appropriate commands and/or data to theselected components to facilitate completion of these operations.Although shown in FIG. 3 as a single, discrete component, managementmodule 315 may represent multiple components and may represent orinclude portions of mobile robotic devices 320 or other elements ofinventory system 310. As a result, any or all of the interaction betweena particular mobile robotic device and the management module 315 that isdescribed herein may, in at least one embodiment, represent peer-to-peercommunication between a mobile robotic device and one or more othermobile robotic devices. The contents and operation of an exampleembodiment of management module 315 were discussed herein in FIG. 2.

The mobile robotic devices in FIG. 3 can move the inventory holders 330a and 330 b between locations within workspace 370 using theirrespective conveyors. In a particular embodiment of the inventory system310, the mobile robotic devices represent independent, self-powereddevices as described in FIGS. 1A and 1B that are configured to freelymove about workspace 370. In alternative embodiments, the mobile roboticdevices 320 a, 320 b and 320 c represent elements of a tracked inventorysystem configured to move the inventory holders 330 a and 330 b alongtracks, rails, cables, crane system, or other guidance or supportelements traversing workspace 370. In this embodiment, the mobilerobotic devices 320 a, 320 b and 320 c may receive power and/or supportthrough a connection to the guidance elements, such as a powered rail.Additionally, in at least one embodiment of inventory system 310 mobilerobotic devices 320 may be configured to utilize alternative conveyanceequipment to move within the workspace 370 and/or between separateportions of the workspace 370.

Additionally, the mobile robotic devices 320 a, 320 b and 320 c may becapable of communicating with the management module 315 to receiveinformation identifying selected inventory holders, transmit thelocations of mobile robotic devices, or exchange any other suitableinformation to be used by the management module 315 or mobile roboticdevices during operation. The mobile robotic devices 320 a, 320 b and320 c may communicate with the management module 315 wirelessly, usingwired connections between mobile robotic devices 320 and managementmodule 315, and/or in any other appropriate manner. For example,embodiments of a mobile robotic device may communicate with themanagement module 315 and/or with one another using 802.311, Bluetooth,or Infrared Data Association (IrDA) standards, or any other appropriatewireless communication protocol. Further, the management module 315 mayinclude components of individual mobile robotic devices. Thus,communication between the management module 315 and a respective mobilerobotic device may represent communication between components of themobile robotic device. The mobile robotic devices 320 may be powered,propelled, and controlled in any suitable manner based on theconfiguration and characteristics of the inventory system 310.

The inventory holders 330 a and 330 b store one or more inventory items.In a particular embodiment, the inventory holders 330 a and 330 binclude multiple storage bins with each storage bin capable of holdingone or more types of inventory items. The inventory holders 330 a and330 b are capable of being carried, rolled, and/or otherwise moved bymobile robotic devices 320. In at least one embodiment, the inventoryholders 330 a and 330 b may provide additional propulsion to supplementthat provided by mobile robotic device 320 when moving a particularinventory holder.

Inventory items represent any objects suitable for storage, retrieval,and/or processing in the inventory system 310. For the purposes of thisdescription, inventory items may include any one or more objects of aparticular type that are stored in the inventory system 310. Thus, aparticular inventory holder is currently storing a particular inventoryitem if the inventory holder 330 currently holds one or more units ofthat type. As one example, the inventory system 310 may represent a mailorder warehouse facility, and inventory items may represent merchandisestored in the warehouse facility. During operation, mobile roboticdevices 320 a, 320 b, and 320 c may retrieve the inventory holders 330 aand 330 b containing one or more inventory items requested in an orderto be packed for delivery to a customer or retrieve the inventoryholders 330 a and 330 b carrying pallets containing aggregatedcollections of inventory items for shipment. Moreover, in at least oneembodiment of the inventory system 310, boxes containing completedorders may themselves represent inventory items.

In at least one embodiment, the inventory system 310 may also includeone or more inventory stations. As shown, the example inventory system310 includes inventory stations 350 a, 350 b, 350 c, 350 d, 350 e, 350f, 350 g, and 350 h. The aforementioned inventory stations representlocations designated for the completion of particular tasks involvinginventory items. Such tasks may include the removal of inventory itemsfrom inventory holders, the introduction of inventory items intoinventory holders, the counting of inventory items in inventory holders,the decomposition of inventory items (e.g. from pallet-sized orcase-sized groups to individual inventory items), and/or the processingor handling of inventory items in any other suitable manner. In at leastone embodiment, the inventory stations may just represent the physicallocations where a particular task involving inventory items can becompleted within the workspace 370. In alternative embodiments, theinventory stations may represent both the physical location and also anyappropriate equipment for processing or handling inventory items, suchas scanners for monitoring the flow of inventory items in and out of theinventory system 310, communication interfaces for communicating withthe management module 315, and/or any other suitable components. Theinventory stations may be controlled, entirely or in part, by humanoperators or may be fully automated. Moreover, the human or automatedoperators of the inventory stations may be capable of performing certaintasks to inventory items, such as stowing, picking, packing or countinginventory items, as part of the operation of the inventory system 310.

In an embodiment, the workspace 370 represents an area associated withthe inventory system 310 in which mobile robotic devices can move and/orinventory holders 330 can be stored. For example, workspace 370 mayrepresent all or part of the floor of a mail-order warehouse in whichinventory system 310 operates. Although FIG. 3 shows, for the purposesof illustration, an embodiment of the inventory system 310 in whichworkspace 370 includes a fixed, predetermined, and finite physicalspace, particular embodiments of inventory system 310 may include mobilerobotic devices and inventory holders that are configured to operatewithin a workspace that is of variable dimensions and/or an arbitrarygeometry. In addition, while FIG. 3 illustrates a particular embodimentof the inventory system 310 in which the workspace 370 is entirelyenclosed in a building or similar physical structure, alternativeembodiments may utilize workspaces in which some or all of the workspace370 is located outdoors, within a vehicle or vessel (e.g., a cargoship), or otherwise unconstrained by a fixed structure.

Moreover, in at least one embodiment, the workspace 370 may includemultiple portions that are physically separated from one another,including but not limited to separate floors, rooms, buildings, and/orportions divided in any other suitable manner. The mobile roboticdevices 320 may be configured to utilize alternative conveyanceequipment such as vertical or horizontal conveyors, trucks, ferries,gondolas, escalators, and/or other equipment suitable to move the mobilerobotic devices between separate portions of the workspace 370.

In operation, the management module 315 selects appropriate componentsto complete particular tasks and transmits one or more task assignments318 to the selected components to trigger completion of the relevanttasks. Each task assignment 318 defines one or more tasks to becompleted by a particular component. These tasks may relate to theretrieval, storage, replenishment, and counting of inventory itemsand/or the management of mobile robotic devices, inventory holders,inventory stations and other components of the inventory system 310.Depending on the component and the task to be completed, a particulartask assignment 318 may identify locations, components, and/or actionsassociated with the corresponding task and/or any other appropriateinformation to be used by the relevant component in completing theassigned task.

In at least one embodiment, the management module 315 generates the taskassignments 318 based at least in part on inventory requests that themanagement module 315 receives from other components of the inventorysystem 310 and/or from external components in communication with themanagement module 315. These inventory requests identify particularoperations to be completed involving inventory items stored or to bestored within the inventory system 310 and may represent communicationof any suitable form. For example, in at least one embodiment, aninventory request may represent a shipping order specifying particularinventory items that have been purchased by a customer and that are tobe retrieved from the inventory system 310 for shipment to the customer.The management module 315 may also generate the task assignments 318independently of such inventory requests, as part of the overallmanagement and maintenance of the inventory system 310. For example, themanagement module 315 may generate the task assignments 318 in responseto the occurrence of a particular event (e.g., in response to a mobilerobotic device requesting a space to park), according to a predeterminedschedule (e.g., as part of a daily start-up routine), or at anyappropriate time based on the configuration and characteristics ofinventory system 310. After generating one or more task assignments 318,the management module 315 transmits the generated task assignments 318to appropriate components for completion of the corresponding task. Therelevant components then execute their assigned tasks.

With respect to mobile robotic devices, the management module 315 may,in at least one embodiment, communicate task assignments 318 to selectedmobile robotic devices 320 a, 320 b, and/or 320 c that identify one ormore destinations for the selected mobile robotic devices 320. Themanagement module 315 may select a respective mobile robotic device toassign the relevant task based on the location or state of the selectedmobile robotic device, an indication that the selected mobile roboticdevice has completed a previously-assigned task, a predeterminedschedule, and/or any other suitable consideration. These destinationsmay be associated with an inventory request the management module 315 isexecuting or a management objective the management module 315 isattempting to fulfill. For example, the task assignment may define thelocation of an inventory holder to be retrieved, an inventory station tobe visited, a storage location where the mobile robotic device shouldpark until receiving another task, or a location associated with anyother task appropriate based on the configuration, characteristics,and/or state of the inventory system 310, as a whole, or individualcomponents of the inventory system 310. For example, in at least oneembodiment, such decisions may be based on the popularity of particularinventory items, the staffing of a particular inventory station, thetasks currently assigned to a particular mobile robotic device, and/orany other considerations.

As part of completing these tasks, in the example shown in FIG. 3, themobile robotic devices 320 a, 320 b, and 320 c may dock with conveyors175 and transport conveyors within workspace 370. The mobile roboticdevices 320 a, 320 b, and 320 c may dock with the conveyors byconnecting to, lifting, and/or otherwise interacting with the conveyorsin any other suitable manner so that, when docked, the mobile roboticdevices 320 a, 320 b, and 320 c are coupled to and/or support theconveyors and can move the conveyors within workspace 370.

The management module 315, in at least one embodiment, may plan thepaths upon which mobile robotic devices travel when moving within theworkspace 370 and for allocating use of a portion of the workspace 370to a particular mobile robotic device for purposes of completing anassigned task. In such embodiments, the mobile robotic devices may, inresponse to being assigned a task, request a path to a particulardestination associated with the task. A mobile robotic device may, inother embodiments, generate its own path(s).

In an embodiment, the management module 315 may select a path betweenthe current location of the requesting mobile robotic device and therequested destination and communicate information identifying this pathto the mobile robotic device. For example, the management module 315 mayutilize knowledge of current congestion, historical traffic trends, taskprioritization, and/or other considerations to select an optimal pathfor the requesting mobile robotic device 320 to take in getting to thedestination. Additionally, in planning the path (or in assigning tasks),the management module 315 may make informed decisions regarding the useof lifts, ramps, tunnels, and/or other conveyance equipment or featuresof the workspace 370 to facilitate the movement of the relevant mobilerobotic device.

After receiving a path from the management module 315, the requestingmobile robotic device 320 may then move to the destination, traversingthe path in a segment-by-segment manner. In an embodiment, before movingalong a particular segment, the mobile robotic device may requestpermission to use the segment from the management module 315. Themanagement module 315 may reserve the segment for use by the requestingmobile robotic device.

FIG. 4 illustrates an example 400 of the inventory system 310 inaccordance with some embodiments. The inventory system 310 illustratedin FIG. 4 is the same as the inventory system 310 described in FIG. 3.The example 400 in FIG. 4 shows that a connection is made between tworespective conveyors that are docked to respective mobile roboticdevices in the workspace 370.

The management module 315 may transmit task assignments 418 to each ofmobile robotic devices 320 a and 320 b. As illustrated, the mobilerobotic devices 320 a and 320 b include respective conveyors that may beconnected to each other in accordance with the description of the mobilerobotic device in FIGS. 1A and 1B. The task assignments 418 in thisembodiment may include tasks that instruct the mobile robotic devices320 a, 320 b to dock with respective conveyors 175. Alternatively, oneor more of the mobile robotic devices 320 a, 320 b may have integratedconveyors 175. The task assignments 418 may also include tasks thatinstruct the mobile robotic device 320 a to travel to a positionadjacent to the inventory station 350 a, and for the mobile roboticdevice 320 b to travel to a position near the position of mobile roboticdevice 320 a and adjacent inventory holder 330 c. The task assignments418 may also include tasks that instruct the mobile robotic devices 320a, 320 b to connect their respective conveyors. The connected conveyors175 of mobile robotic devices 320 a, 320 b, as shown, cover a distancethat enables inventory items to travel along the connected conveyor spanbetween the inventory station 350 a and the inventory holder 330 c inthe workspace 370.

When the conveyors are connected together, each mobile robotic devicemay transmit a signal and/or information (e.g., identificationinformation of the respective mobile robotic devices, identification ofthe respective conveyor motors, etc.) to the management module 315confirming that such a connection was successfully made. Further, themanagement module 315 may store information indicating the relativeposition of the connected conveyors and their associated mobile roboticdevices 320 a and 320 b in the workspace 370.

The management module 315, after receiving the signals indicating thatthe connection between the conveyors was successful, may furthertransmit another task assignment to operate the connected conveyors forenabling inventory items to be moved from the inventory station 350 a tothe inventory holder 330 c. Alternatively, the management module 315 maytransmit a task assignment to operate the connected conveyors forenabling inventory items to be moved from the inventory holder 330 c tothe inventory station 350 a.

FIG. 5 illustrates an example 500 of the inventory system 310 inaccordance with some embodiments. The inventory system 310 illustratedin FIG. 5 is the same as the inventory system 310 described in FIG. 3.The example 500 in FIG. 5 shows that a connection is made betweenmultiple conveyors that are docked to respective mobile robotic devicesin the workspace 370.

In this example, multiple conveyors can be connected to each other toform a conveyor that has a greater length for covering a longer distancewithin the workspace 370. As discussed before, a conveyor may have alength of around 10 feet in an embodiment which can be docked to asingle mobile robotic device. To enable greater lengths of conveyor(e.g., greater than 10 feet), two mobile robotic devices may supportrespective ends of a conveyor that is of such a length. In this example,a first mobile robotic device can be at a first end of the conveyor anda second mobile robotic device can be at a second end of the conveyor.

The management module 315 may transmit task assignments 518 to each ofmobile robotic devices 320 d, 320 e, 320 f, and 320 g. The taskassignments 518 in this embodiment may include tasks that instruct themobile robotic devices 320 d, 320 e, 320 f and 320 g to dock withrespective conveyors 175. Alternatively, one or more of the mobilerobotic devices 320 d, 320 e, 320 f and 320 g may have integratedconveyors 175. The task assignments 518 in this embodiment may alsoinclude tasks that instruct the mobile robotic device 320 d to move to aposition adjacent to the inventory station 350 d in the workspace 370.Inventory items, in this example, are to be moved between the inventorystation 350 d and an inventory holder 330 d. However, a distance toreach these two respective endpoints in the workspace 370 may requireusing a conveyor which has a length such that more than a single mobilerobotic device may be needed to dock with such a long conveyor. Thus,the task assignments 518 may also include tasks instructing the mobilerobotic device 320 e and the mobile robotic device 320 f to dock atdifferent ends of the long conveyor and to move to a position at one endof the conveyor docked to the mobile robotic device 320 d that issituated adjacent to the inventory station 350 d. This configuration mayenable a human operator to place inventory items that come from theinventory station 350 d from the adjacent conveyor and then place suchitems onto the long conveyor docked at one end to the mobile roboticdevice 320 e. The inventory items may then travel along the longconveyor to its other end docked to the mobile robotic device 320 f.Alternatively, the conveyors may be connected, via connectors describedherein, such that inventory items may be moved between the conveyordocked to mobile robotic device 320 d and the long conveyor docked tomobile robotic devices 320 e, 320 f without human intervention.

The task assignments 518 in this example may further include a task thatinstructs the mobile robotic device 320 g with its docked conveyor tomove to a position within the workspace 370 adjacent to the inventoryholder 330 d, and adjacent to another end of the aforementioned longconveyor docked to the mobile robotic device 320 f at one end. At thisend of the long conveyor, a human operator can place the inventory itemsonto the conveyor docked to the mobile robotic device 320 g.Alternatively, the conveyors may be connected, via connectors describedherein, such that inventory items may be moved between the conveyordocked to mobile robotic device 320 g and the long conveyor docked tomobile robotic devices 320 e, 320 f without human intervention. Theinventory items can then be moved to a location of the inventory holder330 d in the workspace 370 as it moves along the length of the conveyordocked to the mobile robotic device 320 g.

It is appreciated that the above example also works in the oppositedirection where inventory items stored at the inventory holder 330 d aremoved to the inventory station 350 d via the conveyors docked to orintegrated with the mobile robotic devices.

FIGS. 6A and 6B illustrate examples 600 and 650 of the inventory system310 in accordance with some embodiments. The inventory system 310illustrated in FIGS. 6A and 6B is the same as the inventory system 310described in FIG. 3. The examples 600 and 650 show a mobile roboticdevice that may move in the workspace 370 and rotate a conveyor dockedto the mobile robotic device. Manipulating the docked conveyor in theseexamples enables the mobile robotic device to perform sorting operationsby rotating the conveyor at one inventory holder to interface withanother inventory holder.

The management module 315 may transmit task assignments 618 to a mobilerobotic device 320 h. The task assignments 618 in this embodiment mayinclude tasks that instruct the mobile robotic device 320 h to dock witha respective conveyor 175. Alternatively, the mobile robotic device 320h may have an integrated conveyor 175. The task assignments 618 in thisembodiment may also include tasks that instruct the mobile roboticdevice 320 h to move to a position adjacent to an inventory station 350f in the workspace 370. Inventory items, in this example, are to bemoved from the inventory station 350 f to an inventory holder 330 e. Thetask assignments 618 instruct the mobile robotic device 320 h to movealong a segment 620 within the workspace 370. Once at the new positionat the end of the segment 620, the task assignments 618 may instruct themobile robotic device 320 h to rotate itself and/or the conveyor via therotating head (e.g., as indicated by the dashed arrows in FIG. 6A) inorder to deliver the inventory items to the inventory holder 330 e.

The mobile robotic device 320 h, based on the task assignments 618,moves along a segment 652 shown in FIG. 6B toward the inventory holder330 e so that its docked conveyor is adjacent to the inventory holder330 e. A human operator may then sort and pick out inventory items forstoring in the inventory holder 330 e, or this operation may becompleted without human intervention. In an example, some of theinventory items that were moved by the mobile robotic device 320 h arenot intended to be stored at inventory holder 330 e but at an inventoryholder 330 f instead. In the example of FIG. 6B, the mobile roboticdevice 320 h may move itself and/or rotate its docked conveyor to benearer a location of the inventory holder 330 f. The human operator canthen pick the inventory items for storing in the inventory holder 330 f,or this operation may be completed without human intervention.

FIGS. 7A and 7B illustrate examples 700 and 750 of the inventory system310 in accordance with some embodiments. The inventory system 310illustrated in FIGS. 7A and 7B is the same as the inventory system 310described in FIG. 3. The examples 700 and 750 show a mobile roboticdevice that may move in the workspace 370 to a storage unit 710 thatstores conveyor(s) that may be docked to the mobile robotic device. Insome embodiments, mobile robotic devices that do not have conveyorsdocked to themselves are included in the inventory system 310. Tofacilitate the ability of mobile robotic devices to use a conveyor inaccordance with the embodiments described herein, the inventory system310 may provide one or more storage units or spaces (“conveyor holders”)710 that store one or more conveyors of different types. In anembodiment, such a storage unit may be automated to supply a conveyor toa respective mobile robotic device. For example, the automated storageunit may be able to receive instructions from the management module 315(or a mobile robotic device) where the instructions specify the type ofconveyor that is needed (e.g., length, dimensions, speed, weightcapacity, any other suitable specification, etc.), and then provide, inan automated manner, the type of conveyor to the mobile robotic deviceafter arriving at the automated storage unit. In an embodiment, theautomated storage unit may comprise a type of automated storage andretrieval system which may include a computer-controlled system forautomatically placing and retrieving conveyors from defined storagelocations within the automated storage unit. In this example, theautomated storage unit may be a smaller structure within the workspace370 that is capable of holding a sufficient amount of conveyors atdiscrete locations within that smaller structure.

As illustrated in FIG. 7A, the management module 315 may transmit taskassignments 718 to a mobile robotic device 720 a. The task assignments718 in this embodiment may include tasks that instruct the mobilerobotic device 720 a to move to a position adjacent to a conveyor holder710 in the workspace 370. The task assignments 718, in particular,instruct the mobile robotic device 720 a to move along a segment 712within the workspace 370. Once at the new position at the end of thesegment 712, the task assignments 618 may instruct the mobile roboticdevice 720 a to dock with a conveyor received from the conveyor holder710. In FIG. 7B, the mobile robotic device 720 a has docked with aconveyor received from the conveyor holder 710. The management module315 may then transmit further task assignments after receivingconfirmation from the mobile robotic device 720 a that the conveyor wassuccessfully received from the conveyor holder 710. In an embodiment,the management module 315 may send a new task assignment instructing themobile robotic device 720 a to move to a new position in the workspace370 for moving inventory items using the docked conveyor.

FIG. 8 illustrates an example 800 of the inventory system 310 inaccordance with some embodiments. The inventory system 310 illustratedin FIG. 8 is the same as the inventory system 310 described in FIG. 3.The example 800 shows mobile robotic devices that are performing tasksoutside of the workspace 370. As discussed before, the workspace 370 mayrepresent an interior of a structure such as a warehouse or buildingand, in at least one embodiment, the management module 315 is configuredto instruct mobile robotic devices with conveyor attachments to performtasks outside of the workspace 370.

The management module 315 may transmit at least one task assignment fromtask assignments 818 to mobile robotic devices 820 a and 820 b. The taskassignments 818 in this embodiment may include tasks that instruct themobile robotic devices 820 a and 820 b to dock with a respectiveconveyor 175 at different ends of the conveyor 175. In this example, theconveyor 175 may be of a particular length such that the mobile roboticdevices 820 a and 820 b are docked at respective ends of the conveyor175 in order to transport the conveyor to a desired location.Alternatively, the mobile robotic devices 820 a and 820 b may have anintegrated conveyor 175.

The task assignments 818 in this embodiment may also include tasks thatinstruct the mobile robotic device 820 a to move to a position adjacentto an inventory station 350 a outside of the workspace 370 and instructthe mobile robotic device 820 b to move to a position adjacent to aninventory station 350 b outside of the workspace 370. Inventory items,in this example, are to be moved from the inventory station 350 a to theinventory station 350 b or vice versa. This configuration may enable ahuman operator to place inventory items that come from the inventorystation 350 a and then place such items onto the long conveyor docked atone end to the mobile robotic device 820 a. The inventory items may thentravel along the long conveyor to its other end docked to the mobilerobotic device 820 b. It is appreciated that this example alsocontemplates moving inventory items that come from inventory station 350b along the long conveyor to the other end docked to the mobile roboticdevice 820 a.

The management module 315 may transmit other task assignments from taskassignments 818 to mobile robotic devices 820 c, 820 d, and 820 e. Thetask assignments 818 in this embodiment may include tasks that instructthe mobile robotic devices 820 c, 820 d, and 820 e to dock with arespective conveyor 175 at different parts of the conveyor 175 (e.g., ata first end, in the middle, and at a second end). Alternatively, themobile robotic devices 820 c, 820 d, and 820 e may have an integratedconveyor 175. The task assignments 818 in this embodiment may alsoinclude tasks that instruct the mobile robotic device 820 c to move to aposition adjacent to a vehicle 830 (e.g., a truck), and include tasks toinstruct the mobile robotic devices 820 d and 820 e to follow themovement of the mobile robotic device 820 c to position the longconveyer as shown in FIG. 8 outside of the workspace 370. Thisconfiguration may enable a human operator to place inventory items thatcome from the vehicle 830 onto the long conveyor docked at one end tothe mobile robotic device 820 c. The inventory items may then travelalong the long conveyor in a direction to the other end docked to themobile robotic device 820 e.

To facilitate sortation of the inventory items that travel along thelength of the long conveyor, the management module 315 may transmitother task assignments from task assignments 818 to mobile roboticdevices 820 g, 820 h, 820 i and 820 f. The task assignments in thisexample may instruct the mobile robotic device 820 g to dock with arespective conveyor 175 and then move to a position adjacent to theinventory station 350 c and adjacent to a portion of the long conveyornear the mobile robotic device 820 c. The task assignments in thisexample may instruct the mobile robotic device 820 h to dock with arespective conveyor 175 and then move to a position adjacent to theinventory station 350 d and adjacent to a portion of the long conveyornear the mobile robotic device 820 d. The task assignments in thisexample may instruct the mobile robotic device 820 i to dock with arespective conveyor 175 and then move to a position adjacent to avehicle 840 (e.g., another truck) and adjacent to a portion of the longconveyor between the mobile robotic devices 820 d and 820 e. Further,the task assignments in this example may instruct the mobile roboticdevice 820 f to dock with a respective conveyor 175 and then move to aposition adjacent to the inventory station 350 e and adjacent to aportion of the long conveyor near the mobile robotic device 820 e. Thisconfiguration may enable one or more human operators to place inventoryitems from the vehicle 840 onto the conveyor docked to the mobilerobotic device 820 i. Alternatively, the conveyors may be connected, viaconnectors described herein, such that inventory items may be movedbetween the conveyors docked to mobile robotic devices 820 g, 820 h, 820i and/or 820 f and the long conveyor docked to mobile robotic devices820 c, 820 d and 820 e without human intervention. In an embodiment, themobile robotic devices 820 g, 820 h, 820 i and/or 820 f may furtherrotate in order to divert inventory items to other destinations orwithin the reach of other human operators.

In this example, the configuration shown in FIG. 8 enables inventoryitems from the vehicle 830 to be placed onto the long conveyor docked atone end to the mobile robotic device 820 c and then travel along thelong conveyor in a direction to the other end docked to the mobilerobotic device 820 e. A human operator may sort inventory items thattravel along the long conveyor and place such items onto the conveyordocked to the mobile robotic device 820 g for arriving at the inventorystation 350 c. Similarly, a human operator may sort other inventoryitems that travel along the long conveyor and place such items onto theconveyor docked to the mobile robotic device 820 h for arriving at theinventory station 350 d. In a similar fashion, another human operatormay sort other inventory items that travel along the long conveyor andplace such items onto the conveyor docked to the mobile robotic device820 f for arriving at the inventory station 350 e. Further, inventoryitems from the vehicle 840 that are placed onto the conveyor docked tothe mobile robotic device 820 i may travel to a portion of the longconveyor between the mobile robotic devices 820 d and 820 e forsortation by a human operator. After being placed onto the longconveyor, the inventory items originally from the vehicle 840 may travelin a direction toward the end of the long conveyor docked to the mobilerobotic device 820 e and ultimately arriving to the inventory station350 e, or alternatively, travel in a direction toward the portion of thelong conveyor docked to the mobile robotic device 820 d and ultimatelyarriving at either the inventory station 350 d or 350 c depending onwhether further sortation is performed. It is appreciated that thisexample also contemplates moving inventory items that come frominventory stations 350 c, 350 d, 350 e along the conveyor segments toeither or both vehicles 830, 840, or moving inventory items between anycombination of the stations 350 c, 350 d, 350 e and/or vehicles 830,840.

FIG. 9 illustrates an example 900 of the inventory system 310 inaccordance with some embodiments. The inventory system 310 illustratedin FIG. 9 is the same as the inventory system 310 described in FIG. 3.The example 900 shows mobile robotic devices that are performing tasksoutside of the workspace 370. As discussed before, the workspace 370 mayrepresent an interior of a structure such as a warehouse or buildingand, in at least one embodiment, the management module 315 is configuredto instruct mobile robotic devices with conveyor attachments to performtasks outside of the workspace 370.

The management module 315 may transmit at least one task assignment fromtask assignments 918 to mobile robotic devices 920 a and 920 k. The taskassignments 918 in this embodiment may include tasks that instruct themobile robotic devices 920 a and 920 k to dock with a respectiveconveyor 175 at different ends of the conveyor 175 and move to aposition adjacent to a vehicle 930 (e.g., a truck) outside of theworkspace 370. The task assignments 918 in this embodiment may includetasks that instruct mobile robotic device 920 b to dock with arespective conveyor 175 and then connect with the end of the conveyordocked to the mobile robotic device 920 k. This configuration may enablea human operator to place inventory items that come from the vehicle 930onto the long conveyor docked at one end to the mobile robotic device920 a. The inventory items may then travel along the long conveyor in adirection to the other end docked to the mobile robotic device 920 k.

To facilitate sortation of the inventory items coming from the end ofthe long conveyor docked to the mobile robotic device 920 k, the mobilerobotic device 920 b may rotate (e.g., as indicated by the curvedarrows) to sort such items to one or more different destinations. Asshown, the mobile robotic device 920 b may rotate to enable inventoryitems to be placed onto a conveyor docked a mobile robotic device 920 cfor arriving at the inventory station 350 e. The mobile robotic device920 b may also rotate to enable inventory items to be placed onto aconveyor docked a mobile robotic device 920 d. The inventory items wouldthen travel to another conveyor docked to a mobile robotic device 920 ffor arriving at the inventory station 350 f. Similarly, the mobilerobotic device 920 b may rotate to enable inventory items to be placedonto a conveyor docked a mobile robotic device 920 e. The mobile roboticdevice 920 e could also then rotate to enable the inventory items to beplaced onto one end of a long conveyor docked to a mobile robotic device920 g and travel along its length to another end of the long conveyorthat is docked to a mobile robotic device 920 h. In this exampleconfiguration, the inventory items may be further placed onto a portionof another long conveyor that is docked to a mobile robotic device 920 iand travel to the other end of the long conveyor docked to a mobilerobotic device 920 j for arriving at the inventory station 350 g. It isappreciated that this example also contemplates moving inventory itemsthat come from inventory stations 350 e, 350 f, 350 g along the conveyorsegments to the vehicle 930, or moving inventory items between anycombination of the stations 350 e, 350 f, 350 g and/or vehicles 930.

The specification and drawings are, accordingly, to be regarded in anillustrative rather than a restrictive sense. It will, however, beevident that various modifications and changes may be made thereuntowithout departing from the broader spirit and scope of the invention asset forth in the claims.

What is claimed is:
 1. A mobile robotic device comprising: a conveyor,the conveyor including: a conveyor belt; one or more conveyor cylindersthat are configured to enable the conveyor belt to rotate in at leastone direction by sliding over the one or more conveyor cylinders; aconveyor motor coupled to at least one conveyor cylinder, the conveyormotor, when activated by power, configured to rotate the at least oneconveyor cylinder to rotate the conveyor belt in a clockwise orcounter-clockwise direction; a connector, the connector including aprotruding portion, the protruding portion adapted for engagement in anopening of a connector receptacle of another conveyor; and a powermodule, the power module including a conveyor controller and an externalpower connector, the external power connector configured to interfacewith an external power source, the power module configured to supplypower from the external power source to at least one of the conveyormotor and the conveyor controller; a rotating head, the rotating head atleast one of attached to or configured to dock with the conveyor, therotating head configured to rotatably maneuver the conveyor, as a whole,in at least one direction; and a drive module coupled to the rotatinghead, the drive module comprising a motorized axle, a pair of motorizedwheels, and a pair of stabilizing wheels, the drive module configured tomove the mobile robotic device, as a whole, in at least one direction.2. The mobile robotic device of claim 1, wherein the opening of theconnector receptacle is coupled to a second conveyor included in asecond mobile robotic device, the protruding portion of the connectorwhen engaged with the opening of the connector receptacle enabling theconveyor belt of the conveyor of the mobile robotic device to be fixedin a coplanar orientation with a second conveyor belt of the secondconveyor of the second mobile robotic device.
 3. The mobile roboticdevice of claim 2, wherein the power module of the mobile robotic deviceis configured to transmit power, via the connector, to the connectorreceptacle of the second mobile robotic device to power the secondconveyor of the second mobile robotic device, the conveyor controllerconfigured to transmit a control signal, via the connector, to theconnector receptacle of the second mobile robotic device to activate asecond conveyor motor included in the second conveyor of the secondmobile robotic device.
 4. A robotic device comprising: a conveyor, theconveyor including: a conveyor belt; a conveyor motor coupled to atleast one conveyor cylinder, the conveyor motor, when activated bypower, configured to rotate the at least one conveyor cylinder to rotatethe conveyor belt in at least one direction; and a connector, theconnector adapted to engage with a connector receptacle of anotherconveyor; a rotating head detachably coupled to the conveyor, therotating head configured to rotatably maneuver the conveyor, as a whole,in at least one direction; and a drive module coupled to the rotatinghead, the drive module configured to move the robotic device, as awhole, in at least one direction.
 5. The robotic device of claim 4,wherein the connector includes a protruding portion, the protrudingportion adapted for engagement in an opening of the connectorreceptacle.
 6. The robotic device of claim 5, wherein the opening of theconnector receptacle is coupled to a second conveyor included in asecond robotic device.
 7. The robotic device of claim 6, wherein theprotruding portion of the connector when engaged with the opening of theconnector receptacle enables the conveyor belt of the conveyor of therobotic device to be fixed in a coplanar orientation with a second beltof the second conveyor of the second robotic device.
 8. The roboticdevice of claim 6, further comprising: a power module, the power moduleincluding a conveyor controller and an external power connector.
 9. Therobotic device of claim 8, wherein the external power connector isconfigured to interface with an external power source, and the powermodule is configured to supply power from the external power source tothe conveyor motor.
 10. The robotic device of claim 8, wherein the powermodule is configured to transmit power, via the connector, to theconnector receptacle of the second robotic device to power a secondconveyor motor of the second mobile robotic device
 11. The roboticdevice of claim 8, wherein the conveyor controller is configured totransmit a control signal, via the connector, to the connectorreceptacle of the second robotic device to activate a second conveyormotor included in the second conveyor of the second robotic device. 12.The robotic device of claim 4, wherein the rotating head includes aportion that abuts at least a portion of the conveyor.
 13. The roboticdevice of claim 4, wherein the drive module includes a motorized axleand a pair of motorized wheels.
 14. The robotic device of claim 13,wherein the motorized wheels are operable to rotate in a first directionto move the robotic device in a forward direction.
 15. A method fortransporting items, comprising: moving a first mobile robotic device toa first point of a physical space, wherein the first mobile roboticdevice comprises an independent, self-powered device and the first pointcomprises a location of a conveyor holder; receiving, by the firstmobile robotic device, a first conveyor from the conveyor holder;docking the first mobile robotic device with the first conveyor; andmoving, by the first mobile robotic device, the first conveyor to asecond point of the physical space, wherein the second point isassociated with at least one of an inventory holder operable to storeone or more inventory items, an inventory station configured foroperations related to one or more inventory items, or a vehicleconfigured for transport of one or more inventory items.
 16. The methodof claim 15, further comprising: moving a second mobile robotic deviceto a third point of the physical space, wherein the third point issubstantially adjacent to the first conveyor, the second mobile roboticdevice comprising a second independent, self-powered device that isdocked with a second conveyor; and connecting the second conveyor to thefirst conveyor to link the first conveyor and the second conveyortogether.
 17. The method of claim 16, further comprising: receiving, bythe first conveyor, one or more inventory items from the at least one ofthe inventory holder, the inventory station, or the vehicle;transporting, via the first conveyor, the one or more inventory items tothe connected second conveyor; and transporting, via the secondconveyor, the one or more inventory items to a respective end of thesecond conveyor in a direction away from the first conveyor and towardat least one of another inventory holder, another inventory station, oranother vehicle.
 18. The method of claim 15, further comprising:receiving, by the first conveyor, one or more inventory items from theat least one of the inventory holder, the inventory station or thevehicle.
 19. The method of claim 18, further comprising: moving, by thefirst robotic device, the first conveyor to a third point outside of thephysical space, the third point associated with at least one of anotherconveyor, another inventory holder, another inventory station or anothervehicle.
 20. The method of claim 19, wherein the at least one of theother conveyor, the other inventory holder, the other inventory stationor the other vehicle comprises at least one of one or more otherconveyors, one or more other inventory holders, one or more otherinventory stations or one or more other vehicles, and furthercomprising: sorting, by the first conveyor of the first robotic device,the one or more inventory items to at least one of the one or more otherconveyors, the one or more other inventory holders, the one or moreother inventory stations or the one or more other vehicles.